const program = require('commander'); // 参数解析 --help
const { version } = require('./constants'); // 获取版本号
// console.log(process.argv); // 当前进程的参数 lh-cli --help运行出结果
const path = require('path');

// 多个指令命令的集合
const mapAction = {
  create: { // 创建模板
    alias: 'c', // 配置命令的别称
    description: 'create a project', // 命令相对应的描述
    examples: [
      'lh-cli create <project-name>'
    ],
  },
  '*': { // 配置别的命令
    alias: 'conf',
    description: 'config project variable',
    examples: [],
  }
}

// 相等于 Object.key() 循环遍历创建命令
Reflect.ownKeys(mapAction).forEach((action)=>{
  program.command(action) // 配置命令的名字
  .alias(mapAction[action].alias) // 命令别的名称

})